package cn.com.inossem.model;

import android.os.Parcel;
import android.os.Parcelable;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by Mickey.Li on 2017-8-30.
 */

public class ProjectBean implements Parcelable {
	private String agreementComment;
	private String agreementNO;
	private int amount;
	private String approver;
	private String collect;
	private String costCode;
	private int count;
	private String createTime;
	private String customerName;
	private String id;
	private int isEffect;
	private String middleman;
	private String phone;
	private ProjectInfoBean projectInfo;
	private String projectInfoID;
	private double realSalary = 0.0;
	private String remark;
	private String salary;
	private String sapYear;
	private String skills;
	private String status;
	private String timeCode;
	private String totalScore;
	private String truename;
	private String updateTime;
	private int userId;
	private String realProjectName = "";

	public void setRealSalary(double realSalary) {
		this.realSalary = realSalary;
	}

	public String getRealProjectName() {
		return realProjectName;
	}

	public void setRealProjectName(String realProjectName) {
		this.realProjectName = realProjectName;
	}

	public String getAgreementComment() {
		return agreementComment;
	}

	public void setAgreementComment(String agreementComment) {
		this.agreementComment = agreementComment;
	}

	public String getAgreementNO() {
		return agreementNO;
	}

	public void setAgreementNO(String agreementNO) {
		this.agreementNO = agreementNO;
	}

	public int getAmount() {
		return amount;
	}

	public void setAmount(int amount) {
		this.amount = amount;
	}

	public String getApprover() {
		return approver;
	}

	public void setApprover(String approver) {
		this.approver = approver;
	}

	public String getCollect() {
		return collect;
	}

	public void setCollect(String collect) {
		this.collect = collect;
	}

	public String getCostCode() {
		return costCode;
	}

	public void setCostCode(String costCode) {
		this.costCode = costCode;
	}

	public int getCount() {
		return count;
	}

	public void setCount(int count) {
		this.count = count;
	}

	public String getCreateTime() {
		return createTime;
	}

	public void setCreateTime(String createTime) {
		this.createTime = createTime;
	}

	public String getCustomerName() {
		return customerName;
	}

	public void setCustomerName(String customerName) {
		this.customerName = customerName;
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public int getIsEffect() {
		return isEffect;
	}

	public void setIsEffect(int isEffect) {
		this.isEffect = isEffect;
	}

	public String getMiddleman() {
		return middleman;
	}

	public void setMiddleman(String middleman) {
		this.middleman = middleman;
	}

	public String getPhone() {
		return phone;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}

	public ProjectInfoBean getProjectInfo() {
		return projectInfo;
	}

	public void setProjectInfo(ProjectInfoBean projectInfo) {
		this.projectInfo = projectInfo;
	}

	public String getProjectInfoID() {
		return projectInfoID;
	}

	public void setProjectInfoID(String projectInfoID) {
		this.projectInfoID = projectInfoID;
	}

	public double getRealSalary() {
		return realSalary;
	}

	public void setRealSalary(int realSalary) {
		this.realSalary = realSalary;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public String getSalary() {
		return salary;
	}

	public void setSalary(String salary) {
		this.salary = salary;
	}

	public String getSapYear() {
		return sapYear;
	}

	public void setSapYear(String sapYear) {
		this.sapYear = sapYear;
	}

	public String getSkills() {
		return skills;
	}

	public void setSkills(String skills) {
		this.skills = skills;
	}

	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getTimeCode() {
		return timeCode;
	}

	public void setTimeCode(String timeCode) {
		this.timeCode = timeCode;
	}

	public String getTotalScore() {
		return totalScore;
	}

	public void setTotalScore(String totalScore) {
		this.totalScore = totalScore;
	}

	public String getTruename() {
		return truename;
	}

	public void setTruename(String truename) {
		this.truename = truename;
	}

	public String getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(String updateTime) {
		this.updateTime = updateTime;
	}

	public int getUserId() {
		return userId;
	}

	public void setUserId(int userId) {
		this.userId = userId;
	}

	public static class ProjectInfoBean implements Parcelable {
		private int count;
		private String id;
		private String impMethod;
		private int limitTime;
		private String modelRequire;
		private String newFlag;
		private String payMethod;
		private String projectAddress;
		private String projectAddressName;
		private String projectComment;
		private String projectCycle;
		private String projectIndustry;
		private String projectName;
		private String projectNature;
		private String projectRequire;
		private String projectStatus;
		private String projectType;
		private String publishUserID;
		private String requireNo;
		private String salaryModel;
		private String startDate;
		private String station;
		private String stationDuty;
		private List<Object> allList;
		private List<String> modelRequires;
		private List<String> stationDutys;

		public int getCount() {
			return count;
		}

		public void setCount(int count) {
			this.count = count;
		}

		public String getId() {
			return id;
		}

		public void setId(String id) {
			this.id = id;
		}

		public String getImpMethod() {
			return impMethod;
		}

		public void setImpMethod(String impMethod) {
			this.impMethod = impMethod;
		}

		public int getLimitTime() {
			return limitTime;
		}

		public void setLimitTime(int limitTime) {
			this.limitTime = limitTime;
		}

		public String getModelRequire() {
			return modelRequire;
		}

		public void setModelRequire(String modelRequire) {
			this.modelRequire = modelRequire;
		}

		public String getNewFlag() {
			return newFlag;
		}

		public void setNewFlag(String newFlag) {
			this.newFlag = newFlag;
		}

		public String getProjectNature() {
			return projectNature;
		}

		public void setProjectNature(String projectNature) {
			this.projectNature = projectNature;
		}

		public String getPayMethod() {
			return payMethod;
		}

		public void setPayMethod(String payMethod) {
			this.payMethod = payMethod;
		}

		public String getProjectAddress() {
			return projectAddress;
		}

		public void setProjectAddress(String projectAddress) {
			this.projectAddress = projectAddress;
		}

		public String getProjectAddressName() {
			return projectAddressName;
		}

		public void setProjectAddressName(String projectAddressName) {
			this.projectAddressName = projectAddressName;
		}

		public String getProjectComment() {
			return projectComment;
		}

		public void setProjectComment(String projectComment) {
			this.projectComment = projectComment;
		}

		public String getProjectCycle() {
			return projectCycle;
		}

		public void setProjectCycle(String projectCycle) {
			this.projectCycle = projectCycle;
		}

		public String getProjectIndustry() {
			return projectIndustry;
		}

		public void setProjectIndustry(String projectIndustry) {
			this.projectIndustry = projectIndustry;
		}

		public String getProjectName() {
			return projectName;
		}

		public void setProjectName(String projectName) {
			this.projectName = projectName;
		}

		public String getProjectRequire() {
			return projectRequire;
		}

		public void setProjectRequire(String projectRequire) {
			this.projectRequire = projectRequire;
		}

		public String getProjectStatus() {
			return projectStatus;
		}

		public void setProjectStatus(String projectStatus) {
			this.projectStatus = projectStatus;
		}

		public String getProjectType() {
			return projectType;
		}

		public void setProjectType(String projectType) {
			this.projectType = projectType;
		}

		public String getPublishUserID() {
			return publishUserID;
		}

		public void setPublishUserID(String publishUserID) {
			this.publishUserID = publishUserID;
		}

		public String getRequireNo() {
			return requireNo;
		}

		public void setRequireNo(String requireNo) {
			this.requireNo = requireNo;
		}

		public String getSalaryModel() {
			return salaryModel;
		}

		public void setSalaryModel(String salaryModel) {
			this.salaryModel = salaryModel;
		}

		public String getStartDate() {
			return startDate;
		}

		public void setStartDate(String startDate) {
			this.startDate = startDate;
		}

		public String getStation() {
			return station;
		}

		public void setStation(String station) {
			this.station = station;
		}

		public String getStationDuty() {
			return stationDuty;
		}

		public void setStationDuty(String stationDuty) {
			this.stationDuty = stationDuty;
		}

		public List<Object> getAllList() {
			return allList;
		}

		public void setAllList(List<Object> allList) {
			this.allList = allList;
		}

		public List<String> getModelRequires() {
			return modelRequires;
		}

		public void setModelRequires(List<String> modelRequires) {
			this.modelRequires = modelRequires;
		}

		public List<String> getStationDutys() {
			return stationDutys;
		}

		public void setStationDutys(List<String> stationDutys) {
			this.stationDutys = stationDutys;
		}

		@Override
		public int describeContents() {
			return 0;
		}

		@Override
		public void writeToParcel(Parcel dest, int flags) {
			dest.writeInt(this.count);
			dest.writeString(this.id);
			dest.writeString(this.impMethod);
			dest.writeInt(this.limitTime);
			dest.writeString(this.modelRequire);
			dest.writeString(this.newFlag);
			dest.writeString(this.payMethod);
			dest.writeString(this.projectAddress);
			dest.writeString(this.projectAddressName);
			dest.writeString(this.projectComment);
			dest.writeString(this.projectCycle);
			dest.writeString(this.projectIndustry);
			dest.writeString(this.projectName);
			dest.writeString(this.projectNature);
			dest.writeString(this.projectRequire);
			dest.writeString(this.projectStatus);
			dest.writeString(this.projectType);
			dest.writeString(this.publishUserID);
			dest.writeString(this.requireNo);
			dest.writeString(this.salaryModel);
			dest.writeString(this.startDate);
			dest.writeString(this.station);
			dest.writeString(this.stationDuty);
			dest.writeList(this.allList);
			dest.writeStringList(this.modelRequires);
			dest.writeStringList(this.stationDutys);
		}

		public ProjectInfoBean() {
		}

		protected ProjectInfoBean(Parcel in) {
			this.count = in.readInt();
			this.id = in.readString();
			this.impMethod = in.readString();
			this.limitTime = in.readInt();
			this.modelRequire = in.readString();
			this.newFlag = in.readString();
			this.payMethod = in.readString();
			this.projectAddress = in.readString();
			this.projectAddressName = in.readString();
			this.projectComment = in.readString();
			this.projectCycle = in.readString();
			this.projectIndustry = in.readString();
			this.projectName = in.readString();
			this.projectNature = in.readString();
			this.projectRequire = in.readString();
			this.projectStatus = in.readString();
			this.projectType = in.readString();
			this.publishUserID = in.readString();
			this.requireNo = in.readString();
			this.salaryModel = in.readString();
			this.startDate = in.readString();
			this.station = in.readString();
			this.stationDuty = in.readString();
			this.allList = new ArrayList<Object>();
			in.readList(this.allList, Object.class.getClassLoader());
			this.modelRequires = in.createStringArrayList();
			this.stationDutys = in.createStringArrayList();
		}

		public static final Creator<ProjectInfoBean> CREATOR = new Creator<ProjectInfoBean>() {
			@Override
			public ProjectInfoBean createFromParcel(Parcel source) {
				return new ProjectInfoBean(source);
			}

			@Override
			public ProjectInfoBean[] newArray(int size) {
				return new ProjectInfoBean[size];
			}
		};
	}

	@Override
	public int describeContents() {
		return 0;
	}

	@Override
	public void writeToParcel(Parcel dest, int flags) {
		dest.writeString(this.agreementComment);
		dest.writeString(this.agreementNO);
		dest.writeInt(this.amount);
		dest.writeString(this.approver);
		dest.writeString(this.collect);
		dest.writeString(this.costCode);
		dest.writeInt(this.count);
		dest.writeString(this.createTime);
		dest.writeString(this.customerName);
		dest.writeString(this.id);
		dest.writeInt(this.isEffect);
		dest.writeString(this.middleman);
		dest.writeString(this.phone);
		dest.writeParcelable(this.projectInfo, flags);
		dest.writeString(this.projectInfoID);
		dest.writeDouble(this.realSalary);
		dest.writeString(this.remark);
		dest.writeString(this.salary);
		dest.writeString(this.sapYear);
		dest.writeString(this.skills);
		dest.writeString(this.status);
		dest.writeString(this.timeCode);
		dest.writeString(this.totalScore);
		dest.writeString(this.truename);
		dest.writeString(this.updateTime);
		dest.writeInt(this.userId);
		dest.writeString(this.realProjectName);
	}

	public ProjectBean() {
	}

	protected ProjectBean(Parcel in) {
		this.agreementComment = in.readString();
		this.agreementNO = in.readString();
		this.amount = in.readInt();
		this.approver = in.readString();
		this.collect = in.readString();
		this.costCode = in.readString();
		this.count = in.readInt();
		this.createTime = in.readString();
		this.customerName = in.readString();
		this.id = in.readString();
		this.isEffect = in.readInt();
		this.middleman = in.readString();
		this.phone = in.readString();
		this.projectInfo = in.readParcelable(ProjectInfoBean.class.getClassLoader());
		this.projectInfoID = in.readString();
		this.realSalary = in.readDouble();
		this.remark = in.readString();
		this.salary = in.readString();
		this.sapYear = in.readString();
		this.skills = in.readString();
		this.status = in.readString();
		this.timeCode = in.readString();
		this.totalScore = in.readString();
		this.truename = in.readString();
		this.updateTime = in.readString();
		this.userId = in.readInt();
		this.realProjectName = in.readString();
	}

	public static final Creator<ProjectBean> CREATOR = new Creator<ProjectBean>() {
		@Override
		public ProjectBean createFromParcel(Parcel source) {
			return new ProjectBean(source);
		}

		@Override
		public ProjectBean[] newArray(int size) {
			return new ProjectBean[size];
		}
	};
}
